home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / etc / apparmor.d / usr.bin.firefox-3.5 < prev    next >
Text File  |  2009-10-20  |  5KB  |  194 lines

  1. # vim:syntax=apparmor
  2. # Last Modified: Tue Jun  9 07:32:13 2009
  3. # Author: Jamie Strandboge <jamie@canonical.com>
  4.  
  5. #include <tunables/global>
  6.  
  7. /usr/lib/firefox-3.5.*/firefox {
  8.   #include <abstractions/audio>
  9.   #include <abstractions/base>
  10.   #include <abstractions/cups-client>
  11.   #include <abstractions/dbus>
  12.   #include <abstractions/fonts>
  13.   #include <abstractions/freedesktop.org>
  14.   #include <abstractions/gnome>
  15.   #include <abstractions/nameservice>
  16.   #include <abstractions/user-tmp>
  17.   #include <abstractions/X>
  18.  
  19.   # for networking
  20.   network inet stream,
  21.   network inet6 stream,
  22.   @{PROC}/[0-9]*/net/if_inet6 r,
  23.   @{PROC}/[0-9]*/net/ipv6_route r,
  24.  
  25.   # sounds
  26.   /etc/sound/ r,
  27.   /etc/sound/** r,
  28.   /etc/wildmidi/wildmidi.cfg r,
  29.  
  30.   # should maybe be in abstractions
  31.   /etc/ r,
  32.   /etc/gnome/defaults.list r,
  33.   /etc/mime.types r,
  34.   /etc/mailcap r,
  35.   /usr/bin/dbus-launch ixr,
  36.   /usr/bin/apport-bug Ux,
  37.  
  38.   # firefox specific
  39.   /etc/firefox-3.*/ r,
  40.   /etc/firefox-3.*/** r,
  41.   /etc/xulrunner-1.9*/ r,
  42.   /etc/xulrunner-1.9*/** r,
  43.   /etc/gre.d/ r,
  44.   /etc/gre.d/* r,
  45.  
  46.   # noisy
  47.   deny /usr/lib/firefox-3.*/** w,
  48.   deny /usr/lib/firefox-addons/** w,
  49.   deny /usr/lib/xulrunner-addons/** w,
  50.  
  51.   # These are needed when a new user starts firefox and firefox.sh is used
  52.   /usr/lib/firefox-3.*/** ixr,
  53.   /usr/bin/basename ixr,
  54.   /sbin/killall5 ixr,
  55.   /bin/which ixr,
  56.   @{PROC}/ r,
  57.   @{PROC}/[0-9]*/cmdline r,
  58.   @{PROC}/[0-9]*/stat r,
  59.   @{PROC}/[0-9]*/status r,
  60.   @{PROC}/filesystems r,
  61.   capability sys_ptrace,
  62.  
  63.   /etc/mtab r,
  64.   @{PROC}/[0-9]*/mounts r,
  65.   @{PROC}/[0-9]*/maps r,
  66.  
  67.   # allow access to documentation and other files the user may want to look
  68.   # at in /usr
  69.   /usr/ r,
  70.   /usr/** r,
  71.  
  72.   # so browsing directories works
  73.   / r,
  74.   /**/ r,
  75.  
  76.   # allow read and write to all user's files, except explicitly denied ones
  77.   @{HOME}/ r,
  78.   @{HOME}/** rw,
  79.   @{HOME}/Desktop/** rw,
  80.   @{HOME}/Firefox_wallpaper* rw,
  81.   owner /media/** rw,
  82.   owner /mnt/** rw,
  83.   owner /srv/** rw,
  84.  
  85.   #include <abstractions/private-files>
  86.   audit deny @{HOME}/.ssh/** mrwkl,
  87.   audit deny @{HOME}/.gnome2_private/** mrwkl,
  88.  
  89.   # comment this out if using gpg plugin/addons
  90.   audit deny @{HOME}/.gnupg/** mrwkl,
  91.  
  92.   # per-user firefox configuration
  93.   @{HOME}/.mozilla/ rw,
  94.   @{HOME}/.mozilla/** rw,
  95.   @{HOME}/.mozilla/**/*.sqlite* k,
  96.   @{HOME}/.mozilla/**/.parentlock k,
  97.   @{HOME}/.mozilla/plugins/** rm,
  98.   @{HOME}/.mozilla/**/plugins/** rm,
  99.  
  100.   # per-user common plugin configuration
  101.   @{HOME}/.icedteaplugin/ rw,
  102.   @{HOME}/.icedteaplugin/** rw,
  103.   @{HOME}/.adobe/ rw,
  104.   @{HOME}/.adobe/** rw,
  105.   @{HOME}/.macromedia/ rw,
  106.   @{HOME}/.macromedia/** rw,
  107.   @{HOME}/.java/ rw,
  108.   @{HOME}/.java/** rwk,
  109.  
  110.   #
  111.   # Extensions
  112.   # /usr/share/.../extensions/... is already covered by '/usr/** r', above.
  113.   # Allow 'x' for downloaded extensions, but inherit policy for safety
  114.   @{HOME}/.mozilla/**/extensions/** mixr,
  115.  
  116.   deny /usr/lib/firefox-3.*/update.test w,
  117.   deny /usr/lib/mozilla/extensions/**/ w,
  118.   deny /usr/lib/xulrunner-addons/extensions/**/ w,
  119.   deny /usr/share/mozilla/extensions/**/ w,
  120.  
  121.   #
  122.   # Plugins/helpers
  123.   #
  124.   @{PROC}/[0-9]*/fd/ r,
  125.   /usr/lib/** rm,
  126.   /bin/bash ixr,
  127.   /bin/dash ixr,
  128.   /bin/grep ixr,
  129.   /bin/ps Uxr,
  130.   /bin/uname Uxr,
  131.   /usr/bin/m4 ixr,
  132.   /usr/lib/nspluginwrapper/i386/linux/npviewer Uxr,
  133.   /var/lib/ r,
  134.   /var/lib/** mr,
  135.  
  136.   # for maximum plugin/helper compatibility
  137.   #/usr/bin/* Uxr,
  138.   #/usr/lib/*/** ixr,
  139.  
  140.   #
  141.   # For stricter access, comment out the 'maximum plugin/helper compatibility'
  142.   # lines above and uncomment these
  143.   #
  144.  
  145.   # evince has its own profile, so change to it
  146.   /usr/bin/evince PUxr,
  147.  
  148.   # miscellaneous
  149.   #/usr/bin/eog Uxr,
  150.   /usr/bin/gedit Uxr,
  151.   /usr/bin/gimp* Uxr,
  152.   /usr/bin/file-roller Uxr,
  153.   /usr/bin/ooffice Uxr,
  154.   /usr/bin/oocalc Uxr,
  155.   /usr/bin/oodraw Uxr,
  156.   /usr/bin/ooimpress Uxr,
  157.   /usr/bin/oowriter Uxr,
  158.   /usr/bin/gtk-gnash ixr,
  159.   /usr/bin/pulseaudio ixr,
  160.  
  161.   # totem
  162.   /usr/lib/totem/** ixr,
  163.   /usr/bin/totem-gstreamer Uxr,
  164.   /usr/bin/totem-xine Uxr,
  165.   /usr/bin/totem Uxr,
  166.  
  167.   # mozplugger
  168.   /etc/mozpluggerrc r,
  169.   /usr/bin/mozplugger-helper Uxr,
  170.  
  171.   # mplayer plugin
  172.   /etc/mplayerplug-in.conf r,
  173.   /usr/bin/mplayer Uxr,
  174.  
  175.   # java
  176.   /usr/lib/jvm/java-6-openjdk/jre/bin/java Uxr,
  177.   /etc/java-*-sun/** r,
  178.   /usr/lib/jvm/java-*-sun-1.*/jre/bin/java Uxr,
  179.  
  180.   # for mailto:
  181.   #include <abstractions/ubuntu-email>
  182.   #include <abstractions/ubuntu-console-email>
  183.  
  184.   # Terminals for using console applications. These abstractions should ideally
  185.   # have 'ix' to restrct access to what only firefox is allowed to do
  186.   #include <abstractions/ubuntu-gnome-terminal>
  187.  
  188.   # By default, we won't support launching a terminal program in Xterm or
  189.   # KDE's konsole. It opens up too many unnecessary files for most users.
  190.   # People who need this functionality can uncomment the following:
  191.   ##include <abstractions/ubuntu-xterm>
  192.   ##include <abstractions/ubuntu-konsole>
  193. }
  194.